Memory systems are universally employed in digital processing systems for several purposes. For example, the memory system may store program instructions that control the operation of a central processing unit (CPU) included in the digital processing system. In addition, the memory system typically stores information that is received and processed by the CPU.
Memory systems are classified, in part, by the way in which information is provided to, and retrieved from, the system. For example, memory systems are often described as providing random-access memory (RAM), read-only memory (ROM), or programmable read-only memory (PROM). RAM is so named because information can either be written into or read out of various sections of the memory at random. ROM contains information that is typically input by the manufacturer of the memory system and is designed only to be read. The information stored in PROM is also designed primarily to be read from the memory but can also be written into by a process that is more complex and slower than the conventional writing process in RAM.
A conventional memory system coupled to a CPU includes a number of components. In that regard, data storage is accomplished by a plurality of memory cells arranged into a memory array. Each memory cell is designed to store a single binary digit, or bit, of data in the form of a voltage having one of two levels. These levels are conventionally designated "logic one" and "logic zero".
Memory cells are classified in several different ways. For example, memory cells may be either dynamic or static. A dynamic memory cell is a relatively simple device, typically including a single capacitive element that stores the bit of data. The disadvantage with dynamic memory cells is that they retain information for only a limited time. Thus, the bit of data must be periodically reapplied to the memory cell if the information is to be retained.
Static memory cells are more complex than dynamic cells and typically include a plurality of semiconducting elements. These elements cooperatively retain data applied to the cell for extended intervals without being refreshed. As a result, the increased memory cell complexity allows simpler support circuits to be employed.
The memory cells are arranged into a plurality of columns and rows that define the memory array, with each cell corresponding to a different location in the array. Information is written into and read from particular locations in the array by the CPU, in cooperation with the remaining components of the memory system. These components include a write circuit and a read or sensing circuit.
Of the two, the write circuit is simpler. More particularly, the write circuit includes a decoder that transfers data from the CPU to the memory cell. This typically involves enabling the cells in the row of the array in which the select memory cell is located. Then data is applied to the column in which the select memory cell is located. Because the select memory cell is the only one enabled in that column, it receives and stores the data. No additional processing of the data is generally required.
In contrast, the sensing circuit is more complex. Like the write circuit, a sensing circuit must include a decoder for selectively coupling the CPU to particular locations in the array. In addition, the sensing circuit must be designed to properly interpret the information stored in a given memory cell. In that regard, most memory cells store information as low-level electrical signals. As a result, this information can be easily misinterpreted if subject to noise or compared to loosely toleranced reference signals. The low-level signals stored in memory are also likely inadequate to operate downstream circuits. As a result, the sensing circuit must ensure that the information is sufficiently amplified for proper interpretation when received at the CPU.
Conventional sensing circuits are commonly either of differential or single-ended construction. Differential sensing circuits include a pair of lines coupled to the memory cells. One line is identified as a "read bit line" (RBL), while the other line is its complement, identified as a "not read bit line" (RBL).
As noted previously, memory cells typically store information in the form of relatively low-level electrical signals, which are particularly susceptible to misinterpretation caused by noise. The differential comparison of complementary outputs reduces the impact of noise, by doubling the signal range available, and effectively makes the circuit self-referencing. As a tradeoff, however, differential arrangements are relatively complex and consume precious space in integrated circuit designs.
Single-ended sensing circuits, as their name suggests, have a single read bit line (RBL) coupled to a given memory cell. Thus, integrated circuit space is conserved. Because single-ended sensing circuits may not be self-referencing, however, some reference mechanism must be provided to improve noise immunity, thereby increasing circuit complexity.
These various components of memory systems can be produced by a number of semiconductor technologies. For example, complementary metal-oxide semiconductor (CMOS) transistors have been employed in the design of memory arrays. MOS devices typically require relatively little semiconductor space and dissipate little power in an integrated circuit and are thus useful in forming memories by large-scale integration techniques. CMOS devices have also been used in sensing circuits. Because CMOS transistors are not generally drivable at high current levels, however, they are not particularly well suited for that application.
Bipolar transistors have also been used for memory arrays and sensing circuits. In contrast to MOS devices, bipolar transistors consume a relatively large amount of space and power in an integrated circuit. Where a large memory capacity is required, this constraint may be unacceptable, precluding the use of bipolar devices in the memory array. Because a comparatively small number of devices are employed in the sensing circuit, however, the high drivability of bipolar transistors makes them well suited for that application.
While a number of memory cells and sensing circuits have been developed in the past, it remains desirable to develop an arrangement that consumes less circuit space and power, more reliably interprets data, and allows data to be accessed more rapidly.